package br.senac.notafiscal.service;

import java.util.List;

import br.senac.notafiscal.dao.ClienteDAO;
import br.senac.notafiscal.dao.NotaFiscalDAO;
import br.senac.notafiscal.dao.ProdutoDAO;
import br.senac.notafiscal.entity.Cliente;
import br.senac.notafiscal.entity.NotaFiscal;
import br.senac.notafiscal.entity.Produto;

public class NotaFiscalService {

	private ClienteDAO clienteDAO;
	private ProdutoDAO produtoDAO;
	private NotaFiscalDAO notaFiscalDAO;

	public NotaFiscalService() {
		clienteDAO = new ClienteDAO();
		produtoDAO = new ProdutoDAO();
		notaFiscalDAO = new NotaFiscalDAO();
	}

	public List<Cliente> listaCliente() {
		return clienteDAO.findAll();
	}

	public List<Produto> listaProduto() {
		return produtoDAO.findAll();
	}

	public List<NotaFiscal> listaNotasFiscais() {
		return notaFiscalDAO.findAll();
	}

	public void salvarNotaFiscal(NotaFiscal nf) {
		notaFiscalDAO.persist(nf);
	}

	public void excluirNotaFiscal(NotaFiscal notaFiscalDetached) {
		NotaFiscal notaFiscal = notaFiscalDAO.getById(notaFiscalDetached.getId());
		notaFiscalDAO.remove(notaFiscal);
	}
}
